A Cardinality Solver: More Expressive Constraints for Free - (Poster Presentation)
نویسندگان
چکیده
Despite the semantic simplicity of cardinality constraints, the CNF encodings typically used to solve them invariably turn one constraint into a large number of CNF clauses and/or auxiliary variables. This incurs a significant cost, both in space complexity and in runtime, that could be avoided by reasoning about cardinality constraints directly within a solver. Adding a single, native cardi-nality constraint instead of numerous clauses and/or auxiliary variables avoids any space overhead and simplifies the solver's procedures for reasoning about that constraint. Inspired by the simple observation that clauses are cardinality constraints themselves, and thus cardinality constraints generalize clauses, this work seeks to answer the question: How much of the research on developing efficient CNF SAT solvers can be applied to solving cardinality constraints? Additional motivation came from our experience with a native implementation of cardinality constraints that was included in some early versions of the MiniSAT solver [3] as a simple, unoptimized example of the solver's ability to easily incorporate non-clausal Boolean constraints. That ability incurred un-wanted overhead and was removed in later versions, and the native cardinality constraint implementation received little attention compared to the work done on CNF encodings. In addition to those early versions of MiniSAT, there have been other implementations of cardinality constraints that could be considered " native, " but we are aware of none that integrate the constraints into a SAT solver by simply extending the existing clauses to incur little to no overhead. For example, any Pseudo-Boolean (PB) solver or Satisfiability Modulo Theories (SMT) solver that handles linear integer arithmetic can solve cardinality constraints directly, as their constraints subsume both clauses and cardinality. Numerous PB solvers have been developed by extending a SAT solver, but little attention was paid to their performance on CNF. We are aware of only one experimental comparison between a PB solver and its corresponding SAT solver on CNF instances [2], comparing PBChaff with ZChaff, and the PB version was found to be consistently slower; the extension to more expressive constraints came at a noticeable cost. On the contrary, by restricting the solver to cardinal-ity constraints and not general PB constraints, the implementation in this work retains those properties and efficiencies. Asín, et al. [1] evaluated an " SMT-based approach " to cardinality constraints that solved them without encoding them to CNF. The " SMT " implementation was created by " coupling " two solving engines, which does not …
منابع مشابه
Native Cardinality Constraints: More Expressive, More Efficient Constraints
Boolean cardinality constraints are commonly translated (encoded) into Boolean CNF, a standard form for Boolean satisfiability problems, which can be solved using a standard SAT solving program. However, cardinality constraints are a simple generalization of clauses, and the complexity entailed by encoding them into CNF can be avoided by reasoning about cardinality constraints natively within a...
متن کاملExtending the Description Logic ALC with More Expressive Cardinality Constraints on Concepts
We extend the terminological formalism of the well-known description logic ALC from concept inclusions (CIs) to more general constraints expressed in the quantifier-free fragment of Boolean Algebra with Presburger Arithmetic (QFBAPA). In QFBAPA one can formulate Boolean combinations of inclusion constraints and numerical constraints on the cardinalities of sets. Our new formalism extends, on th...
متن کاملOn Algorithms and Complexity for Sets with Cardinality Constraints
Typestate systems ensure many desirable properties of imperative programs, including initialization of object fields and correct use of stateful library interfaces. Abstract sets with cardinality constraints naturally generalize typestate properties: relationships between the typestates of objects can be expressed as subset and disjointness relations on sets, and elements of sets can be represe...
متن کاملConcept Descriptions with Set Constraints and Cardinality Constraints
We introduce a new description logic that extends the well-known logic ALCQ by allowing the statement of constraints on role successors that are more general than the qualified number restrictions of ALCQ. To formulate these constraints, we use the quantifier-free fragment of Boolean Algebra with Presburger Arithmetic (QFBAPA), in which one can express Boolean combinations of set constraints an...
متن کاملOn Algorithms and Complexity for Sets with Cardinality Constraints PSPACE and PTIME Logics for Program Analysis
Typestate systems ensure many desirable properties of imperative programs, including initialization of object fields and correct use of stateful library interfaces. Abstract sets with cardinality constraints naturally generalize typestate properties: relationships between the typestates of objects can be expressed as subset and disjointness relations on sets, and elements of sets can be represe...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012